The invention relates generally to the field of digital computer systems, and more particularly to systems and methods for facilitating remote access to parallel filesystems.
In modern xe2x80x9centerprisexe2x80x9d computing, a number of personal computers, workstations, and other devices such as mass storage subsystems, network printers and interfaces to the public telephony system, are typically interconnected in one or more computer networks. The personal computers and workstations are used by individual users to perform processing in connection with data and programs that may be stored in the mass storage subsystems. In such an arrangement, the personal computers/workstations, operating as clients, typically download the data and programs from the network mass storage subsystems for processing. In addition, the personal computers or workstations will enable processed data to be uploaded to the network mass storage subsystems for storage, to a network printer for printing, to the telephony interface for transmission over the public telephony system, or the like. In such an arrangement, the network mass storage subsystems, network printers and telephony interface operate as servers, since they are available to service requests from all of the clients in the network. By organizing the network in such a manner, the servers are readily available for use by all of the personal computers/workstations in the network. Such a network may be spread over a fairly wide area, with the personal computers/workstations being interconnected by communication links such as electrical wires or optic fibers.
Data processed by computers is organized into files, which, in turn, are organized in filesystems maintained on the mass storage subsystems. A filesystem can be an xe2x80x9cordinaryxe2x80x9d filesystem, which is maintained on a single mass storage subsystem on a single server, or a parallel filesystem (xe2x80x9cPFSxe2x80x9d), which is maintained on mass storage subsystems maintained by a plurality of servers. In a PFS, a file is striped across mass storage subsystems maintained by a plurality of servers, and, when a file is retrieved or updated by a client, the servers can perform a portion of the retrieval or update operation in parallel, potentially resulting in faster completion.
A problem arises in connection with accessing files in a PFS in that the client computer and server computer(s) on which the PFS is maintained need to communicate over the network. Currently, the communications take place between the client computer""s operating system and the server computer. In that case, communication errors can cause a failure in the operating system, which, in turn, can result in failure of all processing (a so-called xe2x80x9ccrashxe2x80x9d) in connection with the client computer.
The invention provides a new and improved system and method for facilitating remote access to parallel filesystems.
In brief summary, the invention provides a parallel filesystem remote access subsystem that facilitates remote access to files in a parallel filesystem in a digital computer network, the network including at least one client computer and a plurality of server computers interconnected by a communication link, and each server computer storing a portion of at least one file in the parallel filesystem. The parallel filesystem remote access subsystem includes, associated with the server computer, a parallel filesystem input/output daemon, and, associated with the client computer, a parallel filesystem module and a parallel filesystem proxy daemon. The parallel filesystem module receives access requests generated to access a file in the parallel filesystem and refer the access requests to the parallel filesystem proxy daemon, and the parallel filesystem proxy daemon, in turn, generates server access request messages for transfer over the communications link. The client computer processes the parallel filesystems module in a privileged kernel mode and the parallel filesystem proxy daemon in an unprivileged user mode. The a parallel filesystem input/output daemon, which is processed in the server computer""s user mode, controls processing of server access request messages received by the server computer over the communication link.